🎖️GitЯра🎖️
Node / meshtastic / Meshtastic-Android / files / core / domain / src / commonMain / kotlin / org / meshtastic / core / domain / usecase / settings / NodeDatabaseExport.kt
Displaying Raw • Download
core/domain/src/commonMain/kotlin/org/meshtastic/core/domain/usecase/settings/NodeDatabaseExport.kt bd2863243bab6eb213401d949839a2bc74dde7e2 (bd286324) Text, 7.28 KB
T8b949e/*
* Copyright (c) 2026 Meshtastic LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
Tff7b72package T7ee787org.meshtastic.core.domain.usecase.settings
Tff7b72import T7ee787kotlinx.serialization.Serializable
T8b949e/**
* Root document written by [ExportNodeDatabaseUseCase]. Absent fields are omitted from the JSON rather than emitted as
* null/0 sentinels, so consumers can distinguish "no reading" from a genuine zero.
*/
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364NodeDatabaseExportTb4b4b4(
Tff7b72val Te6edf3schemaVersionTb4b4b4: Tffa657IntTb4b4b4,
T8b949e/** ISO-8601 UTC timestamp of when the export was produced. */
Tff7b72val Te6edf3exportedAtTb4b4b4: Tffa657StringTb4b4b4,
T8b949e/** Unsigned node number of the local device, when known. */
Tff7b72val Te6edf3myNodeNumTb4b4b4: Tffa657Long? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3nodesTb4b4b4: Te6edf3ListTff7b72<Te6edf3NodeExportTff7b72>Tb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364NodeExportTb4b4b4(
T8b949e/** Unsigned 32-bit node number. */
Tff7b72val Te6edf3numTb4b4b4: Tffa657LongTb4b4b4,
T8b949e/** Hex user id, e.g. "!a1b2c3d4". */
Tff7b72val Te6edf3idTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3longNameTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3shortNameTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3hwModelTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3roleTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3isLicensedTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3isUnmessagableTb4b4b4: Tffa657Boolean? Tff7b72= Tff7b72nullTb4b4b4,
T8b949e/** Base64-encoded Curve25519 public key. */
Tff7b72val Te6edf3publicKeyTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3signsPacketsTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3manuallyVerifiedTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
T8b949e/** Epoch seconds of the last packet heard from this node. */
Tff7b72val Te6edf3lastHeardTb4b4b4: Tffa657Long? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3snrTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3rssiTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3channelTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4,
Tff7b72val Te6edf3viaMqttTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3hopsAwayTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3lastTransportTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3isFavoriteTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3isIgnoredTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3isMutedTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3nodeStatusTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3notesTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3positionTb4b4b4: Te6edf3PositionExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3deviceMetricsTb4b4b4: Te6edf3DeviceMetricsExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3environmentMetricsTb4b4b4: Te6edf3EnvironmentMetricsExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3powerMetricsTb4b4b4: Te6edf3PowerMetricsExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3powerChannelLabelsTb4b4b4: Te6edf3ListTff7b72<Tffa657StringTff7b72>Tff7b72? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3airQualityMetricsTb4b4b4: Te6edf3AirQualityMetricsExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3paxcounterTb4b4b4: Te6edf3PaxcountExport? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3metadataTb4b4b4: Te6edf3DeviceMetadataExport? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364PositionExportTb4b4b4(
Tff7b72val Te6edf3latitudeTb4b4b4: Tffa657Double? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3longitudeTb4b4b4: Tffa657Double? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3altitudeTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
T8b949e/** Epoch seconds of the position fix. */
Tff7b72val Te6edf3timeTb4b4b4: Tffa657Long? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3locationSourceTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3groundSpeedTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3groundTrackTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3satsInViewTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3precisionBitsTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364DeviceMetricsExportTb4b4b4(
Tff7b72val Te6edf3batteryLevelTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3voltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3channelUtilizationTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3airUtilTxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3uptimeSecondsTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364EnvironmentMetricsExportTb4b4b4(
Tff7b72val Te6edf3temperatureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3relativeHumidityTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3barometricPressureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3gasResistanceTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3voltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3currentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3iaqTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3distanceTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3luxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3whiteLuxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3irLuxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3uvLuxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3windDirectionTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3windSpeedTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3weightTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3windGustTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3windLullTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3radiationTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3rainfall1hTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3rainfall24hTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3soilMoistureTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3soilTemperatureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
T8b949e/**
* Legacy repeated 1-Wire readings. Firmware 2.8 moved these to [oneWireTemperatureCh0]..[oneWireTemperatureCh7];
* retained so exports of telemetry stored before then keep their original shape.
*/
Tff7b72val Te6edf3oneWireTemperatureTb4b4b4: Te6edf3ListTff7b72<Tffa657FloatTff7b72>Tff7b72? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh0Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh1Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh2Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh3Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh4Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh5Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh6Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3oneWireTemperatureCh7Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh0Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh1Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh2Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh3Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh4Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh5Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh6Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3adcVoltageCh7Tb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364PowerMetricsExportTb4b4b4(
Tff7b72val Te6edf3ch1VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch1CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch2VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch2CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch3VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch3CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch4VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch4CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch5VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch5CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch6VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch6CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch7VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch7CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch8VoltageTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3ch8CurrentTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364AirQualityMetricsExportTb4b4b4(
Tff7b72val Te6edf3pm10StandardTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm25StandardTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm100StandardTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm10EnvironmentalTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm25EnvironmentalTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm100EnvironmentalTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles03umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles05umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles10umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles25umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles50umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles100umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3co2Tb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3co2TemperatureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3co2HumidityTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3formFormaldehydeTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3formHumidityTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3formTemperatureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pm40StandardTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particles40umTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pmTemperatureTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pmHumidityTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pmVocIdxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3pmNoxIdxTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3particlesTpsTb4b4b4: Tffa657Float? Tff7b72= Tff7b72nullTb4b4b4,
Tb4b4b4)
Tf0883e@Serializable Tff7b72data Tff7b72class T56d364PaxcountExportTb4b4b4(Tff7b72val Te6edf3wifiTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4, Tff7b72val Te6edf3bleTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4, Tff7b72val Te6edf3uptimeTb4b4b4: Tffa657Int Tff7b72= T79c0ff0Tb4b4b4)
Tf0883e@Serializable
Tff7b72data Tff7b72class T56d364DeviceMetadataExportTb4b4b4(
Tff7b72val Te6edf3firmwareVersionTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3deviceStateVersionTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3canShutdownTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3hasWifiTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3hasBluetoothTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3hasEthernetTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3roleTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3positionFlagsTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3hwModelTb4b4b4: Tffa657String? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3hasRemoteHardwareTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3hasPKCTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tff7b72val Te6edf3excludedModulesTb4b4b4: Tffa657Int? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3hasXeddsaTb4b4b4: Tffa657Boolean Tff7b72= Tff7b72falseTb4b4b4,
Tb4b4b4)
Served by rngit 1.5.0 - Generated in 0.08s